package com.yzqp.generator.util.resolve;

import com.yzqp.generator.util.ParamMap;
import lombok.Data;

/**
 * 解析表达式的最顶层父类
 * 子类有  变量表达式   if表达式   for表达式
 */
@Data
public abstract class ResolveExpression {

    // 表达式的值
    protected String expressionString;

    // 参数
    protected ParamMap paramMap;

    public ResolveExpression(String expressionString, ParamMap paramMap) {
        this.expressionString = expressionString;
        this.paramMap = paramMap;
    }

    /**
     * 解析语法
     *
     * @return
     */
    public abstract String interpreter();
}
